home *** CD-ROM | disk | FTP | other *** search
/ SPACE 2 / SPACE - Library 2 - Volume 1.iso / apps / 255 / applic / gdoshelp.doc < prev    next >
Text File  |  1988-06-14  |  21KB  |  463 lines

  1.       EVERYTHING YOU EVER WANTED TO KNOW ABOUT GDOS (AND MORE)
  2.  
  3.                         by Douglas N. Wheeler
  4.  
  5.  
  6. What is GDOS?
  7.  
  8.       GDOS is an extension to GEM which adds new capabilities to your
  9. ST.  Originally, GDOS was intended to be an integral part of GEM, but
  10. due to time restraints, had to be left out.  Atari is now offering GDOS
  11. to registered developers at a cost of $500 per application using GDOS
  12. (it doesn't cost anything to look, except for the cost of becoming a
  13. developer).
  14.       The three primary new capabilities are:
  15.  
  16. 1.  The ability to use multiple fonts in various point sizes on the
  17.     screen, printer, and other output devices.
  18.  
  19. 2.  Allows the creation of metafiles, which are standardized files
  20.     intended to be useable by many different applications.  This
  21.     allows files created in one file to be useable in another.
  22.  
  23. 3.  Support for various output devices with resolutions up to
  24.     32,767 x 32,767 (including emulation of this resolution on the
  25.     screen).  This allows graphics to be printed at the highest
  26.     resolution of the output device.
  27.  
  28.  
  29. How to use GDOS
  30.  
  31.       In theory, using GDOS is as simple as putting GDOS.PRG in your
  32. AUTO folder and booting the computer.  In practice, though, a series of
  33. conditions must be met.  The most important of these conditions is that
  34. there must be a valid ASSIGN.SYS file present in the root directory of
  35. the boot disk.
  36.       The following is a typical ASSIGN.SYS file.
  37.  
  38. PATH=C:\GDOS.SYS
  39. ;
  40. 01p SCREEN.SYS  ; default screen
  41. ;
  42. 02p SCREEN.SYS  ; low resolution
  43. ATSS10.FNT      ; fonts
  44. ATSS12.FNT
  45. ATSS18.FNT
  46. ATSS24.FNT
  47. ATTP10.FNT
  48. ATTR10.FNT
  49. ATTR12.FNT
  50. ATTR18.FNT
  51. ATTR24.FNT
  52. ;
  53. 03p SCREEN.SYS  ; medium resolution
  54. ATSS10CG.FNT
  55. ATSS12CG.FNT
  56. ATSS18CG.FNT
  57. ATSS24CG.FNT
  58. ATTP10CG.FNT
  59. ATTR10CG.FNT
  60. ATTR12CG.FNT
  61. ATTR18CG.FNT
  62. ATTR24CG.FNT
  63. ;
  64. 04p SCREEN.SYS  ; high resolution
  65. ATSS10.FNT
  66. ATSS12.FNT
  67. ATSS18.FNT
  68. ATSS24.FNT
  69. ATTP10.FNT
  70. ATTR10.FNT
  71. ATTR12.FNT
  72. ATTR18.FNT
  73. ATTR24.FNT
  74. ;
  75. 21 FX80.SYS  ; Epson 9-pin dot-matrix printer
  76. ATSS10EP.FNT
  77. ATSS12EP.FNT
  78. ATSS18EP.FNT
  79. ATSS24EP.FNT
  80. ATTP10EP.FNT
  81. ATTR10EP.FNT
  82. ATTR12EP.FNT
  83. ATTR18EP.FNT
  84. ATTR24EP.FNT
  85. ;
  86. 31r META.SYS  ; metafile driver
  87. ATSS10MF.FNT
  88. ATSS12MF.FNT
  89. ATSS18MF.FNT
  90. ATSS24MF.FNT
  91. ATTP10MF.FNT
  92. ATTR10MF.FNT
  93. ATTR12MF.FNT
  94. ATTR18MF.FNT
  95. ATTR24MF.FNT
  96.  
  97.       As you can see, I have divided the file into distinct groups. 
  98. The first line of the ASSIGN.SYS file is use to tell GDOS where the
  99. fonts and device drivers are located.  This line must always start with
  100. PATH= which is followed by a pathname of up to 64 characters locating
  101. the fonts and drivers,
  102.       Following the path identifying line is the list of device
  103. drivers and their associated fonts.  Each group is composed of four
  104. parts.  First is a number representing the type of device:
  105.  
  106. 01-10  Screen drivers
  107. 11-20  Plotter drivers
  108. 21-30  Printer drivers
  109. 31-40  Metafile drivers
  110.  
  111.       The Atari has four built-in device drivers, they are
  112.  
  113. 01  Default screen (used when an application doesn't care about the
  114.     screen resolution)
  115. 02  Low resolution screen
  116. 03  Medium resolution screen
  117. 04  High resolution screen
  118.  
  119.       Immediately following the device number may be a "load flag" of
  120. either "p" or "r".  A "p" indicates that the device driver is
  121. "p"ermanent and does not need to be loaded by GDOS.  Because the ST has
  122. it's screen drivers built into ROM, there will be a "p" after devices
  123. 01-04.  An "r" indicates that the device driver should be kept
  124. "r"esident, causing GDOS to load the device driver immediately.  If a
  125. load flag is not present, GDOS will only load the device driver when an
  126. application opens (accesses) that device.
  127.       After the device number and load flag is the filename of the
  128. device driver as it appears in the disk directory.  In the case of
  129. ROM-resident drivers, the filename is only a place-holder (but must be
  130. present).  Keep in mind that the device driver must be in the folder
  131. specified in the path line.  On the lines following those three items
  132. is a list of fonts associated with that device (again, these are the
  133. filenames as they appear in the indicated path of the disk).
  134.       You may have noticed a few lines with semicolons (;) in them. 
  135. GDOS will treat any text on a line to the right of a semicolon as a
  136. comment and will ignore it.
  137.  
  138.  
  139. Editing/Creating ASSIGN.SYS
  140.  
  141.       Now, why would you want to change your ASSIGN.SYS file?  Well,
  142. if you have just one program which uses GDOS, and you are happy with
  143. the fonts you have, then there is no reason to change it.  But, now
  144. that GDOS is beginning to be accepted on the ST, many of us are
  145. acquiring a collection of GDOS applications and fonts.  By editing or
  146. creating a new ASSIGN.SYS, you could create a "universal" ASSIGN.SYS
  147. and font/driver folder to be used with all of these programs!
  148.       Luckily, the ASSIGN.SYS file is a standard text (ASCII) file
  149. which may be edited with most text editors and word processors.  The
  150. only requirement is that the file not contain any formatting codes. 
  151. This can usually be accomplished in a word processor by turning
  152. document mode off, or selecting "Save as text" (check your word
  153. processor manual for exact instructions for doing this).  If you are
  154. using a text editor, such as MicroEmacs or Tempus, all you have to do
  155. is save the file.
  156.       Starting at the top, the first thing you may want to change is
  157. the PATH= line at the beginning of the ASSIGN.SYS file.  By changing
  158. this line, you can put your fonts and printer drivers on another disk
  159. or hard drive partition (instead of your boot disk).  If you are using
  160. floppies, keep in mind that this directory (folder) must be present
  161. when an application accesses any of the GDOS devices.  Also, to speed
  162. booting, this directory should be present when GDOS is loaded.
  163.       Below is a list of my recommended configurations based on what
  164. arrangement of disk drives is being used.
  165.  
  166. One floppy drive:
  167.       Boot disk (drive A) with:
  168.             AUTO folder containing GDOS.PRG
  169.             GDOS.SYS folder containing the fonts and drivers
  170.             ASSIGN.SYS with PATH=A:\GDOS.SYS
  171.             Any GDOS application(s) (you may wish to create separate
  172.                   boot disks for each GDOS application)
  173.  
  174. Two floppy drives:
  175.       Boot disk (drive A) with:
  176.             AUTO folder containing GDOS.PRG
  177.             ASSIGN.SYS with PATH=B:\GDOS.SYS
  178.       Font/driver disk (drive B) with:
  179.             GDOS.SYS folder containing fonts and drivers
  180.       Application disk (drive A after booting GDOS) with:
  181.             Any GDOS application(s) (you may wish to create separate
  182.                   application disks for each GDOS application)
  183.  
  184. Hard drive (booting from floppy):
  185.       Boot disk (drive A) with:
  186.             AUTO folder containing hard drive boot program and
  187.                   GDOS.PRG
  188.             ASSIGN.SYS with PATH=C:\GDOS.SYS
  189.       Hard drive partition C with:
  190.             GDOS.SYS folder containing fonts and drivers
  191.       Any hard drive partition with:
  192.             Any GDOS application(s) (may be on any partition)
  193.  
  194. Hard drive (autobooting):
  195.       Hard drive partition C with:
  196.             AUTO folder containing GDOS.PRG
  197.             GDOS.SYS folder containing fonts and drivers
  198.             ASSIGN.SYS with PATH=C:\GDOS.SYS
  199.       Any hard drive partition with:
  200.             Any GDOS application(s) (may be on any partition)
  201.  
  202.       Of course, these are only suggestions, and other configurations
  203. may be better for different applications.  Hopefully you should now be
  204. able to create other set-ups without too much difficulty.  There are a
  205. few "musts" that have to be observed:
  206.       GDOS.PRG must be in the AUTO folder of the boot disk.
  207.       ASSIGN.SYS must be in the root directory of the boot disk.
  208.       The PATH= line in the ASSIGN.SYS file must contain the complete
  209. pathname of the folder containing the fonts and drivers.
  210.       The fonts and drivers must be in the right place when an
  211. application or tries to open a device.
  212.  
  213.  
  214. A bit about fonts
  215.  
  216.       One question about GDOS fonts that people ask is, "when are the
  217. fonts loaded?"  Many people are under the impression that all the fonts
  218. are loaded when GDOS is initially loaded.  This is not true (and cannot
  219. be done).  An "r" load flag in the ASSIGN.SYS file will cause GDOS to
  220. load only the device driver, not the fonts.  Fonts are loaded only
  221. after an application opens a device and asks for the fonts to be
  222. loaded.  At that time, GDOS will attempt to load all the fonts for that
  223. device.  If there is an error (can't find the file, not enough memory,
  224. etc.) GDOS will skip over that font and continue with the next one. 
  225. When an application is through with the fonts, it can "unload" the
  226. fonts to free up that memory.
  227.       Another fact that many people don't understand is that the font
  228. filename is irrelevant  to GDOS.  Each font has a "header" consisting
  229. of various parameters, some of these are: point size, font name, and a
  230. font ID which is used to identify fonts of the same type (i.e. all
  231. swiss fonts have the same ID).  Another thing to note is that GDOS does
  232. not handle line spacing, this is handled by the application regardless
  233. of the actual size of a given font.  Some programs use the point size
  234. to determine line spacing, and others use the actual height of the font
  235. (yes, the point size can be set different from the actual size).
  236.       For those of you creating your own fonts (with GEMFED or
  237. FONTZ!), you must assign a unique font ID (from 0 to 32,767) to each of
  238. your fonts, and all font of the same type (i.e. Times), but of
  239. different size, must have the same ID.  Another thing you must know
  240. when creating your own fonts, is the resolution of the devices you are
  241. creating the fonts for.  The folowing is a list of most of the
  242. currently available devices and their resolution.
  243.  
  244. Low resolution screen     45 x 45 (horizontal dpi x vertical dpi)
  245. Medium resolution screen  90 x 45
  246. High resolution screen    90 x 90
  247. 9-pin dot-matrix printer  120 x 144
  248. 24-pin printer            180 x 180 or 360 x 360 (NEC P-series only)
  249. Laser printer             150 x 150 (some) or 300 x 300
  250.  
  251.       As you can see, most of these devices have square (round)
  252. pixels.  This allows for sideways printing using the same fonts as for
  253. vertical (normal) printing.  A notable exception to this is with the
  254. 9-pin dot-matrix printers, which will distort characters when printing
  255. them sideways.  Different drivers (from different companies) handle
  256. this problem differently: they either ignore the fact (and print
  257. distorted characters sideways), or they print the left and right sides
  258. of a horizontal page on two separate vertical pages, which must then be
  259. taped together.  The first method is the easier (and faster) of the
  260. two, but the second method will produce correct characters, and the
  261. taping isn't too bad if you are going to photocopy the final product.
  262.       It would be possible to create separate fonts for sideways
  263. printing. but so far this has not been done.  Also, Epson printers (and
  264. 100% compatibles) have a 144 x 144 dpi (double plotter) mode which
  265. could be utilized.  This would not only allow non-distorted sideways
  266. printing, but offers slightly higher resolution in the horizontal
  267. axis.
  268.  
  269.  
  270. Font filenames
  271.  
  272.       As I stated earlier, font filenames are not used by GDOS, but
  273. to us humans, consistant filenames can greatly simplify things.  With
  274. the official release of GDOS (late last year), Atari adopted a
  275. standardized way of naming font files.  Here I will explain Atari's
  276. idea and add a few extensions
  277.       A font filename like ATSS10EP.FNT may look meaningless to
  278. someone who doesn't know how the filename was derived, but is, in fact,
  279. very functional.
  280.       The first and second characters (AT) indicates the
  281. creator/distributor of the font (in this case Atari).  Atari has
  282. suggested that these characters be "AT" for all fonts used on the
  283. Atari, this seems meaningless to me, as I don't have any fonts for any
  284. other computers on my ST disks.  (Why would I?)  I feel these two
  285. characters can be put to better use to specify the
  286. creator/distributor.
  287.       The third and fourth characters (SS) identify the typestyle (in
  288. this case Sans Serif).  These should be unique to a particular
  289. rendition of a specific typeface.
  290.       The fifth and sixth characters (10) specify the point size of
  291. the font.  This should be the point size as printed on the device the
  292. font was designed for, not the pixel height.  Also, sizes less than 10
  293. should have a leading zero (i.e. 06) to maintain the overall
  294. structure.
  295.       The seventh and eighth characters (EP) specify the device for
  296. which the font was designed (in this case the Epson 9-pin driver).  If
  297. there are no seventh and eighth characters, the font is assumed to be
  298. for the high-resolution screen.
  299.       The filename extender on all fonts will be .FNT.
  300.       Although not many companies/individuals have produced fonts for
  301. the ST (yet), I recommend that all font filenames follow this
  302. convention to avoid confusion.  I also suggest a few standard
  303. identifiers:
  304.  
  305. Creator/distributor: AT - Atari
  306.                      MG - Migraph
  307.                      TW - Timeworks
  308.                      NC - Neocept
  309.  
  310. Typestyles:          SS - Sans Serif (Atari's Swiss)
  311.                      TR - Times Roman (Atari's Dutch)
  312.                      TP - Typewriter (Atari)
  313.                      DB - Dingbats (Timeworks' Bullets)
  314.                      DL - Drury Lane (Timeworks)
  315.                      MA - Madison (Timeworks)
  316.                      RK - Rockface (Timeworks)
  317.                      RA - Ravinia (Timeworks)
  318.                      CL - Camelot (Neocept)
  319.  
  320. Device:              MG (or none) - Monochrome graphics (high/low
  321.                                     resolution screen)
  322.                      CG - Color graphics (medium resolution screen)
  323.                      EP - Epson 9-pin dot-matrix prnter (120 x 144)
  324.                      NB - Star NB-24 24-pin dot-matrix printer
  325.                           (180 x 180)
  326.                      NC - NEC C-series 24-pin dot-matrix printer
  327.                           (360 x 360)
  328.                      LL - low resolution laser printer (150 x 150)
  329.                      LS - standard laser printer (300 x 300)
  330.  
  331.       In many cases, the creator/distributor is not important, in
  332. which case the first four characters can be used for the typestyle. 
  333. You will also notice that I have listed typestyles from various
  334. companies, I have done this because I recommend that you rename all of
  335. the font you currently have to match the above conventions, this will
  336. save you a lot of confusion in the future when you may have ten times
  337. as many fonts.  One thing to note if you create a master ASSIGN.SYS
  338. file, is that although the Timeworks Swiss and Dutch fonts are
  339. different from Atari's, they use the same font IDs.  GDOS could get
  340. very confused if you have two fonts with the same ID and point size. 
  341. My personal recommendation is to replace Timeworks' Swiss and Dutch
  342. fonts in the 10, 12, 18, and 24 point sizes with the ones from Atari,
  343. as I feel these are much more professional and true to the original
  344. Helvetica and Times Roman typefaces.
  345.  
  346.  
  347. Metafiles
  348.  
  349.       Metafiles are (in theory) ideal files which can be exchanged
  350. between different GDOS applications.  Metafiles are those files with a
  351. .GEM extender.  Metafiles are "ideal" in the respect that they are
  352. resolution independent.  They are simply instructions for the computer
  353. to recreate a page on any output device at that device's highest
  354. resolution.  This is accomplished by storing commands for drawing
  355. lines, circles, rectangles, text, etc., unlike most picture files
  356. (.NEO, PI?, etc.) whitch store the dots making up an image.
  357.       Unfortunately, metafiles are not 100% standard yet.  This
  358. results in programs not being able to read metafiles created by another
  359. application.  Technically, the fault lies with the program trying to
  360. load the metafile, not the creator.  Many different parameters may be
  361. present in the header of a metafile, but only a few of these are
  362. required.  Unfortunately, many applications expect some of the optional
  363. parameters to be there and can't load the file correctly if they don't
  364. exist.  Currently Easy-Draw (version 2.3) is the most capable of the
  365. available GDOS applications, and can read just about any metafile.
  366.       Some of the more recent GDOS applications are allowing the use
  367. of GEM image files (those ending in .IMG).  These are bit-mapped images
  368. similar to those created by the various ST paint programs (but without
  369. the screen size and resolution limitations).  As is the case with other
  370. paint files, these images may be jagged or blocky when printed on a
  371. high resolution device.
  372.       A very important fact about images in metafiles is that the
  373. metafile does not actually contain a copy of the image.  The metafile
  374. only contains the filename of the image on disk.  This means that you
  375. must not remove the disk containing an image while the metafile is
  376. being printed, and everytime you print that metafile, the image must be
  377. in the same disk (or you will have to change your file).  If GDOS can't
  378. find the image, it will just skip over it.  Be warned.
  379.  
  380.  
  381. Miscellaneous comments
  382.  
  383.       If you are using the Timeworks Desktop Publisher ST (TDTP), you
  384. must run the FONTWID.APP program each time you modify the ASSIGN.SYS
  385. file.  Another important fact is that the relative widths of the
  386. Timeworks fonts are not the same for different devices.  What this
  387. means is that if you create a document with TDTP installed for use with
  388. an Epson 9-pin printer, then load the file into TDTP installed for use
  389. with a laser printer, the text will be re-flowed.  This may result in
  390. different column breaks, lost text, extra white space, etc.  The best
  391. solution to this problem is to create the document with a TDTP
  392. installed for the device which will create the final copy.  Another
  393. idea is to use Atari's fonts (if you have them, they are not public
  394. domain), as the relative sizes between devices is very close (there
  395. still may be a few differences, but can be fixed readily).
  396.       For those of you who have seen a lot of DEGAS Elite GDOS fonts
  397. floating around, don't get too excited.  For those to print properly
  398. (even blocky), you must have matching printer fonts for the screen
  399. fonts.  GEMFED or FONTZ! greatly simplify this process, but if you
  400. intend to create a complete set of fonts in four or five sizes, you
  401. will have a lot of work ahead of you.
  402.       Anyone creating fonts for the general public (either commercial
  403. or PD), try to remember that not everyone is using the same kind of
  404. monitor or printer you are.  If at all possible, create fonts for all
  405. the devices I have listed above.
  406.       Another thing I didn't mention are metafile fonts.  These are
  407. not really fonts, but merely width tables designed to keep correct
  408. character spacing in a file when used with different GDOS applications.
  409.  In most cases, you can eliminate metefile fonts without any loss of
  410. quality.
  411.  
  412.  
  413. Glossary
  414.  
  415. Device (Graphics Device) - Anything used to create some form of
  416.                            output, usually on a video screen or
  417.                            printed on paper or film.
  418.  
  419. Device Driver - A computer program used to control a device as
  420.                 specified by a "master" application.
  421.  
  422. Font - A typeface of a given style and point size.
  423.  
  424. GDOS - Graphics Device Operating System; an extension to the Atari
  425.        ST's operating system allowing for the use of various fonts
  426.        and graphics devices.
  427.  
  428. GEM - Graphics Environment Manager; the portion of the ST's
  429.       operating system which is responsible for most of the visual
  430.       aspects of the ST.
  431.  
  432. Header - A portion of a file (usually at the beginning) containing
  433.          various parameters describing the file.
  434.  
  435. Line Spacing - The distance between successive line of text, usually
  436.                measured in points.
  437.  
  438. Pixel - Picture element; a single dot, usually one of many used to
  439.         create a complete image on a video screen or printed on paper
  440.         or film.
  441.  
  442. Point - A typographical unit of measure; approximately 1/72".
  443.  
  444.  
  445. Copyrights, Trademarks, Etc.
  446.  
  447.       This document is copyright 1988 by Douglas N. Wheeler, all
  448. rights reserved.
  449.  
  450.       Any questions or comments about this document can be directed
  451. to me: Douglas N. Wheeler, PSC 3 Box 6096, Travis AFB, CA  94535  (707)
  452. 437-3786, GEnie address D.N.WHEELER.
  453.       This document mentions several commercial/copyrighted products.
  454.  In each case, it is to be understood that the names are trademarks of
  455. their respective companies and are used here only as references.  I am
  456. in no-way connected, either through employment or otherwise, to any of
  457. these companies.
  458.       I cannot be held responsible for any damages resulting from the
  459. use or misuse of the information contained in this document.  This
  460. document was created for the purpose of providing information, it is up
  461.  to the reader to accept responsibility for the results of the use of
  462. this information.
  463.